docs: update README provider docs + bump to 0.15.2#49
Merged
Conversation
README updates: - Add `vllm:` and `sglang:` to "Supported Providers" table — they were first-class named providers since 0.15.0 but only `lmstudio:` was listed; vLLM/SGLang were buried in the `custom:` section. - Reorder "Local Servers" examples to recommend the named providers (`lmstudio:` / `vllm:` / `sglang:` / `ollama:`) over `custom:` — they default to the right port, validate `*_BASE_URL` env vars through UrlGuard, and pick up the OpenAI stream normalizer. - Add new "HTTP Backend" section documenting the pluggable `Nous.HTTP.Backend` behaviour, env-var selection (`NOUS_HTTP_BACKEND`), and shared hackney pool config. - Bump install snippet to 0.15.2. Doc-warning cleanup (mix docs now 0 warnings): - Remove backtick auto-link references to hidden modules in CHANGELOG.md and lib/nous/persistence/ets.ex. - Switch README link to docs/benchmarks/http_backend.md to a fully-qualified GitHub URL so ExDoc doesn't try to resolve it as an extra. - Reword `:hackney.body/1` mention in hackney backend moduledoc (function was removed in hackney 4 — link can't resolve). Verification: 1594 tests pass, 0 dialyzer errors, 0 credo issues at --strict, mix docs clean, mix hex.build clean.
Quick-reference for agents (Claude, Cursor, Copilot, Codex, etc.) consuming the library. Conforms to https://agents.md. Covers: - Minimal API surface (generate_text, stream_text, new + run) - Provider quick-pick table (which model string to use when) - Key opts agents will actually reach for - Built-in tools and how to write a custom one - HTTP backend selection (Req default, when to switch) - Critical security rules (atom-DoS, approval handlers, PathGuard, UrlGuard, EEx-in-templates, sub-agent dep forwarding) - Common workflows (LiveView streaming, tool loops, failover, local-dev with LM Studio) - Test pattern using Bypass - What's public vs @moduledoc false (don't depend on internals) Goal is to give an agent enough grounding to write working code in ~5 minutes of reading without needing to fetch external pages. Logged in CHANGELOG under 0.15.2.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
README updates:
vllm:andsglang:to "Supported Providers" table — they were first-class named providers since 0.15.0 but onlylmstudio:was listed; vLLM/SGLang were buried in thecustom:section.lmstudio:/vllm:/sglang:/ollama:) overcustom:— they default to the right port, validate*_BASE_URLenv vars through UrlGuard, and pick up the OpenAI stream normalizer.Nous.HTTP.Backendbehaviour, env-var selection (NOUS_HTTP_BACKEND), and shared hackney pool config.Doc-warning cleanup (mix docs now 0 warnings):
:hackney.body/1mention in hackney backend moduledoc (function was removed in hackney 4 — link can't resolve).Verification: 1594 tests pass, 0 dialyzer errors, 0 credo issues at --strict, mix docs clean, mix hex.build clean.